package org.grayrabbit.cms.plugin.loaders;

import java.util.Collection;

import org.grayrabbit.cms.plugin.ModuleDescriptorFactory;
import org.grayrabbit.cms.plugin.Plugin;
import org.grayrabbit.cms.plugin.PluginException;
import org.grayrabbit.cms.plugin.PluginParseException;


/**
 * @author sys53
 * @version 1.0
 * @created 06-一月-2012 16:15:48
 */
public interface PluginLoader {

	public Collection<Plugin> loadAllPlugins(ModuleDescriptorFactory moduleDescriptorFactory) throws PluginParseException;

	public void removePlugin(Plugin plugin) throws PluginException;

	public boolean supportsAddition();

	public boolean supportsRemoval();

}